# init
n = 5
lColumn = [[i for i in range(n, 0, -1)], [], []]

def hanoPrint(lColumn):
    lPlateNum = [len(i) for i in lColumn]
    for i in range(n, 0, -1):
        for j in lColumn:
            if len(j) >= i:
                print('{0:^10}'.format(
                    ''.join(['@' for _ in range(j[i-1])])),end='')
            else:
                print('{0:^10}'.format(''),end='')
        print('')
    print('{0:-^30}'.format(''))


def hano(n, a, b, c):
    if n == 1:
        hanoPrint(lColumn)
        c.append(a.pop())
        return None
    hano(n-1, a, c, b)
    hanoPrint(lColumn)
    c.append(a.pop())
    hano(n-1, b, a, c)


hano(n, *lColumn)
hanoPrint(lColumn)